document.addEventListener('DOMContentLoaded', function () {
    // 获取表单元素
    console.log('DOMContentLoaded triggered'); // 添加调试日志
    const form = document.getElementById('lease-add-customer-form-id');
    if (!form) {
        console.error('Form element not found!');
    }
    const nameInput = document.getElementById('lease-name-input-id-add');
    const telephoneInput = document.getElementById('lease-telephone-input-id');
    const passwordInput = document.getElementById('lease-password-input-id');
    const confirmPasswordInput = document.getElementById('lease-confirm-password-input-id');
    const addressInput = document.getElementById('lease-address-input-id');

    // 验证函数
    function validateForm() {
        // 校验姓名
        if (!nameInput.value) {
            alert('请输入姓名');
            return false;
        } else if (nameInput.value.length > 10) {
            alert('姓名长度不能超过10位');
            return false;
        } else if (!/^[a-zA-Z\u4e00-\u9fa5]+$/.test(nameInput.value)) {
            alert('姓名包含非法字符');
            return false;
        }

        // 校验手机号
        if (!telephoneInput.value) {
            alert('请输入手机号');
            return false;
        } else if (!/^\d{11}$/.test(telephoneInput.value)) {
            alert('手机号应为11位数字');
            return false;
        }

        // 校验密码
        if (!passwordInput.value) {
            alert('请输入密码');
            return false;
        } else if (passwordInput.value.length < 6 || passwordInput.value.length > 12) {
            alert('密码长度应在6到12位之间');
            return false;
        } else if (!/^[a-zA-Z0-9]+$/.test(passwordInput.value)) {
            alert('密码包含非法字符');
            return false;
        }

        // 校验确认密码
        if (!confirmPasswordInput.value) {
            alert('请再次输入密码');
            return false;
        } else if (confirmPasswordInput.value !== passwordInput.value) {
            alert('两次输入的密码不一致');
            return false;
        }

        // 校验地址
        if (!addressInput.value) {
            alert('请输入地址');
            return false;
        } else if (addressInput.value.length > 200) {
            alert('地址长度不能超过200位');
            return false;
        } else if (!/^[a-zA-Z0-9\u4e00-\u9fa5\s,.-]+$/.test(addressInput.value)) {
            alert('地址包含非法字符');
            return false;
        }

        // 如果所有校验都通过
        return true;
    }

    // 表单提交事件
    form.addEventListener('submit', function (event) {
        event.preventDefault(); // 阻止默认提交行为

        // 校验表单
        if (!validateForm()) {
            return; // 如果校验失败，停止后续操作
        }

        // 构造请求数据
        const formData = {
            name: nameInput.value,
            telephone: telephoneInput.value,
            password: passwordInput.value,
            address: addressInput.value
        };
        console.log(formData)
        // 发送 AJAX 请求
        fetch('/customer/add-customer.do', {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json'
            },
            body: JSON.stringify(formData)
        })
            .then(response => response.json())
            .then(message => {
                if (message.msgCode === message.success) {
                    alert('添加成功');
                    window.parent.location.reload();
                } else {
                    alert('添加失败！！！\n可能的原因：1、手机号重复');
                }
            })
            .catch(() => {
                console.log(JSON.stringify(formData))
                alert('系统繁忙');
            });
    });
});